Controller and program of the controller

ABSTRACT

A controller for obtaining a contents list via a network, in which a contents list of scroll destination is quickly obtained when a scroll instruction is input, is provided. When the scroll instruction in the contents list is input by a user&#39;s operation, the controller sets a scroll list obtaining flag into an on state, and preferentially obtains contents information about the scroll destination. When the scroll list obtaining flag is set into the on state, the controller does not transmit a normal contents list obtaining request to a contents list transmitting apparatus. Since the controller transmits the normal contents list obtaining request after average response time passes, the controller can obtain the contents information about scroll destination in the contents list without delay.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a controller for obtaining informationfrom another device.

2. Description of the Related Art

Home networks are provided with reproducing systems that are composed ofa server for saving contents (music, video, or photograph), areproducing apparatus (hereinafter, referred to as the AV receiver) forreproducing contents in the server, and a controller for obtaining anddisplaying a contents list from the server and instructing the AVreceiver to reproduce the contents selected from the contents list bymeans of a user's operation. The controllers are, for example,smartphones or portable music players or the like.

Servers store a lot of contents. The controllers request servers totransmit contents information about a predetermined number (for example,10) of contents (hereinafter, referred to as a normal contents listobtaining request). The controllers transmit a request for obtainingcontents information to the servers until contents information about allcontents in the contents list is completely obtained. For example, whena server has a contents list including 200 tunes, a controller transmitsa command for obtaining contents information to the server twenty timesso as to obtain all contents information. When an instruction forscrolling the contents list is input by a user's operation, thecontroller preferentially obtains the contents information of scrolldestination even during the obtainment of the contents list, and shoulddisplay it on a display section of the controller.

Conventionally, when the controller transmits the request for obtainingthe contents information to the server, the controller adds priorityrelating to the obtainment of contents information to the server. Theserver executes a process based on the request transmitted from thecontroller according to the priority, and transmits the contentsinformation to the controller. However, when requests from thecontroller are accumulated in the server, it takes a time to check thepriority, and thus a response to the controller is delayed. Further,when an interrupt process such as scrolling is generated in thecontroller, even if the controller requests contents information aboutthe scroll destination (hereinafter, referred to as a scroll list) fromthe server, the server cannot immediately transmit the scroll list tothe controller while executing a process for obtaining the contentsinformation transmitted from the controller in the past. As a result,display of the scroll list in the controller is delayed.

Gazette No. WO2008/114525 describes information processing apparatusthat can efficiently control an application program group structured onOS without using a round-robin function or a TSS control function.

SUMMARY OF THE INVENTION

The present invention is devised in order to solve the aboveconventional problem, and its object is to provide a controller forobtaining a contents list in which when a scroll instruction is input, acontents list of scroll destination can be quickly obtained.

A controller according to a preferred embodiment of the presentinvention connectable to a contents list transmitting apparatus fortransmitting a contents list, comprises: an obtainment determiningsection for determining whether obtainment of contents information inthe contents list is finished; a contents information obtaining sectionfor transmitting a normal contents list obtaining request that is arequest for obtaining a predetermined number of the contents informationof the contents whose contents information in the contents list isdetermined that the obtainment is not finished to the contents listtransmitting apparatus so as to obtain the contents information; anaverage response time storage section for storing average response timeas an average value of time from transmission of the normal contentslist obtaining request to the contents list transmitting apparatusthrough completion of reception of the contents information; a scrolloperation input section into which a scroll instruction of the contentslist is input by a user's operation, a scroll list obtainment settingsection for, when the scroll instruction is input, the obtainmentdetermining section determines whether the obtainment of the contentsinformation in the contents list of scroll destination is completed anddetermines that the information is not completely obtained, setting thecontents information about the scroll destination into an on-obtainingstate; and a scroll list obtainment determining section for determiningwhether the scroll list is being obtained, wherein when thedetermination is made that the scroll list is being obtained, the normalcontents list obtaining request is not transmitted, and the contentsinformation obtaining section transmits the request for obtaining thecontents information about the scroll destination to the contents listtransmitting apparatus, after the contents information obtaining sectiontransmits the request for obtaining the contents information about thescroll destination to the contents list transmitting apparatus, thenormal contents list obtaining request is transmitted after the averageresponse time passes.

The controller can be connected to a contents list transmittingapparatus for transmitting a contents list. The controller transmits anormal contents list obtaining request as a request for obtaininginformation about contents in the contents list, and obtains contentsinformation from the contents list transmitting apparatus. Further, thecontroller obtains an average response time as an average value of timefrom the transmission of the normal contents list obtaining request tothe contents list transmitting apparatus through the reception of thecontents information from the contents list transmitting apparatus. Whena contents list scrolling instruction is input by a user's operation,the controller sets a scroll list obtaining flag to ON, andpreferentially obtains the contents information about scrolldestination. When the scroll list obtaining flag is set to ON, after theaverage response time passes, the controller transmits the normalcontents list obtaining request. For this reason, the contentsinformation about the contents list of the scroll destination can beobtained without delay.

In a preferred embodiment, after the contents information obtainingsection obtains the contents information about the scroll destination,the scroll list obtainment setting section sets the scroll list into anon-obtaining state, after the scroll list is set into the non-obtainingstate, the contents information obtaining section transmits the normalcontents list obtaining request to the contents list transmittingapparatus.

When the controller obtains the contents information about the scrolldestination, it sets the scroll list obtaining flag to ON. When thescroll list obtaining flag is set to ON, the controller does nottransmit the normal contents list obtaining request to the contents listtransmitting apparatus. For this reason, the contents list of the scrolldestination can be obtained without delay.

In an another preferred embodiment of the present invention, when theaverage response time passes after the contents information obtainingsection transmits the normal contents list obtaining request to thecontents list transmitting apparatus, a determination is made whetherthe scroll list is being obtained, when the determination is made thatthe scroll list is being obtained, a process for obtaining the contentsinformation in the normal contents list from the contents listtransmitting apparatus is suspended, and the contents informationobtaining section transmits the request for obtaining the contentsinformation about the scroll destination to the contents listtransmitting apparatus.

After the controller transmits the normal contents list obtainingrequest to the contents list transmitting apparatus, when the averageresponse time passes, the controller determines whether the scroll listobtaining flag is set to ON. When the determination is made that thescroll list obtaining flag is set to ON, the controller obtains thecontents information about the scroll destination. When the averageresponse time passes, the controller can obtain the contents list aboutthe scroll destination even while transmitting the normal contents listobtaining request.

The controller according to an another preferred embodiment of thepresent invention, further comprises: a scroll instruction intervalobtaining section for obtaining a scroll instructing interval that is anaverage value of time from the input of the scroll instruction by meansof the user's operation through next input of the scroll instruction,wherein when the determination is made that the scroll instructinginterval is the average response time or less, the contents informationobtaining section transmits the request for obtaining the contentsinformation in the normal contents list whose number is smaller than thepredetermined number to the contents list transmitting apparatus in thenormal contents list obtaining request.

The controller obtains a scroll instructing interval as an average valueof intervals at which the scroll instruction is input by a user'soperation. When the controller transmits the normal contents listobtaining request, the controller requests contents information about aless number of contents from the contents list transmitting apparatus sothat the obtainment of the normal contents is completed within time notmore than the average scroll instructing interval.

The controller according to an another preferred embodiment of thepresent invention, further comprises: a scroll instruction intervalobtaining section for obtaining a scroll instructing interval that is anaverage value of time from the input of the scroll instruction by meansof the user's operation through next input of the scroll instruction,wherein when the determination is made that the scroll instructinginterval is the average response time or less, the contents informationobtaining section does not transmit the normal contents list obtainingrequest to the contents list transmitting apparatus, and waits for inputof the scroll instruction until time of the scroll instructing intervalor more passes.

When the determination is made that the scroll instructing interval isnot more than the average response time, the controller does nottransmit the normal contents list obtaining request to the contents listtransmitting apparatus, but waits for input of the scroll instruction.The controller can prevent the input of the scroll instruction duringthe obtainment of the normal contents list and the obtainment of thecontents information about the scroll destination from being delayed.

The controller for obtaining a contents list via a network or the likefrom the contents list transmitting apparatus, in which when the scrollinstruction is input, a contents list of scroll destination can bequickly obtained, can be provided.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram according to preferred embodiments of thepresent invention;

FIG. 2 is a conceptual diagram of a contents list according to thepreferred embodiments of the present invention;

FIG. 3 illustrates a contents list;

FIG. 4 illustrates a display example of a controller;

FIG. 5 is a display example of the controller;

FIG. 6 is a flowchart to be executed by a control section of thecontroller;

FIG. 7 is a flowchart to be executed by the control section of thecontroller;

FIG. 8 is a flowchart to be executed by the control section of thecontroller;

FIG. 9 illustrates average response time information;

FIG. 10 is a flowchart to be executed by the control section of thecontroller;

FIG. 11 is a flowchart to be executed by the control section of thecontroller;

FIG. 12 is a flowchart to be executed by the control section of thecontroller;

FIG. 13 is a flowchart to be executed by the control section of thecontroller;

FIG. 14 illustrates a scroll operation interval value table;

FIG. 15 is a flowchart to be executed by the control section of thecontroller; and

FIG. 16 is a flowchart to be executed by the control section of thecontroller.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A controller according to preferred embodiments of the present inventionwill be concretely described below with reference to the drawings, butthe present invention is not limited to the embodiments.

FIG. 1 is a block diagram illustrating the controller, an AV receiverand a server according to the preferred embodiments of the presentinvention.

A controller 100 has a control section 11, a storage section 12, adisplay section 13, a communication section and an operating section 15.The control section 11 entirely controls the controller 100 according toexecution of a program stored in the storage section 12. The controlsection 11 is, for example, a microcomputer or a CPU. The storagesection 12 retains setting contents of the controller 100. The storagesection 12 is, for example, a ROM or a RAM. The storage section 12 has acontents list 12A, average response time information 12B, a queue memory12C and a scroll operation interval value table 12D, described later.The display section 13 displays a contents list transmitted from an AVreceiver 200, for example. The display section 13 is, for example, aliquid crystal display or an organic EL display. The communicationsection 14 is a network interface that is connected to LAN or the likeand communicates with another device (for example, the AV receiver 200).The operating section 15 is an interface for receiving user'soperations. The operating section 15 is, for example, buttons or a touchpanel provided in the controller 100. When the scroll instruction isinput by a user's operation of the operating section 15, the controlsection 11 scrolls the contents list.

The AV receiver 200 has a control section 21, a storage section 22, adisplay section 23, a communication section 24, a DSP 25, a DAC 26 andan amplifying section 27. The control section 21 executes a programstored in the storage section 22 so as to entirely control the AVreceiver 200. The control section 21 is, for example, a microcomputer ora CPU. The storage section 22 retains setting contents of the AVreceiver 200 and contents list information or the like. The storagesection 22 is, for example, a ROM or a RAM. The display section 23displays selector information and a volume value or the like of the AVreceiver 200. The display section 23 is, for example, an FL display, ora liquid crystal display or the like. The communication section 24 is anetwork interface that is connected to an LAN or the like, andcommunicates with another device (for example, the controller 100).

The DSP 25 executes a sound field process or the like on digital audiodata. The DAC 26 is a digital-analog converting section, and convertsdigital audio data into analog audio data. The amplifying section 27 isan amplifier, and amplifies the audio data converted into an analogsignal by the DAC 26 so as to output it to a speaker 28.

A server 300 has a control section 31, a storage section 32, an HDD 33and a communication section 34. The control section 31 executes aprogram stored in the storage section 32 so as to entirely control theserver 300. The control section 31 is, for example, a microcomputer or aCPU. The storage section 32 retains setting contents and contents listinformation or the like of the server 300. The storage section 32 is,for example, a ROM or a RAM. The HDD 33 is a hard disc drive, and storescontents. The contents list information may be saved in the storagesection 32 or in the HDD 33. The communication section 34 is aninterface that is connected to an LAN or the like and communicates withanother device. The communication section 14, the communication section24 and the communication section 34 may be communicated with each otherby wireless or wire, or may be communicated by a communication methodother than a network. The communication method other than a network iscommunication such as communication using an HDMI cable or communicationusing RS232C.

The control section 11 of the controller 100 having the aboveconstitution requests the AV receiver 200 to transmit information abouta contents list obtained from the server 300. The control section 11obtains contents lists retained in the AV receiver 200 sequentiallybeginning from a head of the contents lists. When the control section 11receives the scroll instruction of the contents list by means of auser's operation, it preferentially obtains a scroll list. When thecontrol section 11 receives the scroll instruction in the contents listby means of the user's operation and is obtaining a normal contentslist, the control section 11 temporarily stores contents numbers in thenormal contents list being obtained into the storage section 12, andafter finishing obtaining the list, restarts to obtain the normalcontents list. To obtain the normal contents list means that thecontroller 100 obtains the list from the AV receiver 200 according tothe sequence of the contents lists.

FIG. 2 is a conceptual diagram illustrating a hierarchical structure ofthe contents list in the AV receiver 200. A Root hierarchy, an AllTrackshierarchy and a Track hierarchy are present in this order beginning atthe top. An Artist list hierarchy, an album list hierarchy and a tracklist hierarchy may be present below the Root hierarchy, or the list mayhave another hierarchical structure. In this embodiment, the controller100 obtains the contents information from the AV receiver 200, but mayobtain it from the server 300. The contents information is an artistname and an album name of a track, a track name, track reproducing timeand the like.

FIG. 3 illustrates a contents list 12A in the storage section 12 of thecontroller 100, and the contents list 12A manages a track list presentbelow the AllTracks hierarchy. The contents list 12A in FIG. 3 manages aserial number, musical composition ID, artist name, album name, trackname, track reproducing time, and obtainment flag. “The track”represents musical composition itself, “contents” are general names ofmusical compositions, photographs, moving images. The serial number is aserial number of tracks at the lower hierarchy of the AllTracks, and themusical composition ID is an ID for uniquely specifying a track. Theartist name and the album name indicate an artist name and an album nameof each track. The obtainment flag is a flag representing whether thecontroller 100 completely obtains contents information about a trackfrom the AV receiver 200, and its initial value is FALSE (non-obtained).

FIG. 4 illustrates the normal contents list displayed on the displaysection 13 of the controller 100. In FIG. 4, the normal contents listshows contents information with the serial numbers 1 to 3, and thatcontents information with the serial numbers after 4 and thereafter isbeing obtained and Track 3 is being reproduced. Contents may bereproduced by the controller 100 or by the AV receiver 200 according toan instruction of the controller 100. A scroll UP button and a scrollDOWN button are provided in lower right part of the display section 13,and an instruction of scroll up or scroll down is input by a user'soperation. The control section 11 of the controller 100 obtains contentsinformation from the AV receiver 200 in an ascending order or in adescending order of the serial numbers shown in FIG. 3 in the obtainmentof the normal contents list.

FIG. 5 illustrates a scroll list displayed on the display section 13 ofthe controller 100. FIG. 5 illustrates that the scroll down instructionis input by the user's operation and scroll up to the track with theserial number 201 is carried out in the normal contents list in FIG. 4.FIG. 5 illustrates that contents information of up to the serial number203 is finished being obtained, and that contents information with theserial numbers 204 and thereafter is being obtained. When the scrollinstruction is input by the user's operation, the control section 11 ofthe controller 100 obtains contents information of scroll destinationand displays it on the display section 13.

FIG. 6 is a flowchart to be executed by the control section 11 of thecontroller 100 when transfer of a folder hierarchy is instructed by auser's operation. For example, in the case of the normal contents listin FIG. 4, the control section 11 of the controller 100 obtains contentsinformation with the serial numbers 3 and thereafter in FIG. 6.

The control section 11 determines whether a hierarchy transferinstruction is received by a user's operation (S101). Concretely, forexample, when an AllTracks folder is selected by a user's operationduring display of the AllTracks folder on the display section 13 of thecontroller 100, the control section 11 determines that the hierarchytransfer instruction is received.

When the control section 11 determines that the hierarchy transferinstruction is not received (NO at S101), the sequence waits for inputof the hierarchy transfer instruction. When the control section 11determines that the hierarchy transfer instruction is received (YES atS101), it determines whether all the contents lists 12A in thetransferred hierarchy are completely obtained (S102). For example, whenthe AllTracks folder is selected by the user's operation, thedetermination is made whether all the obtainment flags of the trackspresent at the lower hierarchy of the AllTracks folder indicate TRUE.When the control section 11 determines that the contents list 12A at thetransfer destination hierarchy is completely obtained (YES at S102), thecontrol section 11 obtains the obtained contents list 12A from thestorage section 12 (S106), and displays it on the display section 13(S107).

When the control section 11 determines that a track whose contentsinformation is not obtained is present (NO at S102), a request forobtaining a total number of tracks present in the transferred hierarchyis transmitted to the control section 21 of the AV receiver 200 (S103).For example, when the AllTracks folder is selected in a contents tree inFIG. 2, the control section 11 requests the AV receiver 200 to transmita total number of tracks below the AllTracks folder.

The control section 11 secures a memory region for the total numbertransmitted from the AV receiver 200 in the storage section 12, andgenerates the contents list 12A (S104).

The control section 11 executes a contents list obtaining process,described later, in order to obtain information to be set in thecontents list 12A (S105), and displays the contents list on the displaysection 13 (S107) to end the process.

FIG. 7 is a flowchart to be executed by the control section 11 when thescroll instruction is input in the controller 100 by the user'soperation. For example, in a case of the scroll list in FIG. 5, thecontrol section 11 of the controller 100 obtains contents informationwith the serial numbers 204 and thereafter. When the scroll instructionis input by the user's operation, the control section 11 sets a flagrepresenting that a scroll list is being obtained, so as to prevent therequest for obtaining the normal contents list from being transmitted tothe AV receiver 200.

The control section 11 determines whether the instruction for scrollingthe contents list is input by the user's operation (S201). When thedisplay section 13 of a touch-panel type is traced in an up and downdirection with a finger, the control section 11 carries out the scrollof the contents list.

When the control section 11 determines that the scroll instruction isnot input (NO at S201), it waits for the input of the scrollinstruction. When the control section 11 determines that the scrollinstruction is input (YES at S201), it determines whether the contentslist of scroll destination is completely obtained.

When the control section 11 determines that the contents list of thescroll destination is completely obtained (YES at S202), it displays theobtained contents list of the scroll destination (S209) so as to end theprocess. When the control section 11 determines that the contents listof the scroll destination is not yet obtained (NO at S202), a scrolllist obtaining flag is set to TRUE (S203). The scroll list obtainingflag is a flag representing that the control section 11 is obtaining thescroll list. When the scroll list obtaining flag indicates TRUE, thecontrol section 11 does not execute the normal contents list obtainingprocess.

The control section 11 initializes a timer counter variable (S204). Aninitial value of the timer counter variable is 0. The control section 11starts to count the timer (S205) and increments the timer countervariable (S205). The timer increments the timer counter variable by 1 atevery second, for example.

The control section 11 requests the AV receiver 200 to transmit contentsinformation about scroll destination (S206), and receives the contentsinformation transmitted from the AV receiver 200 (S207). When thecontrol section obtains the contents information about the scrolldestination, it requests transmission of contents information aboutcontents whose number is the same as those at a time of obtaining thenormal contents list. FIG. 8 is a flowchart that the control section 11receives contents information transmitted from the AV receiver 200 atS207. The flowchart of the reception of the contents list will bedescribed below.

The control section 11 receives the contents information which the AVreceiver 200 is requested to transmit at step S206 in FIG. 7 (S301). Thecontrol section 11 obtains a current timer counter variable (S302), andcalculates average response time (S303). FIG. 9 illustrates the averageresponse time information 12B of the storage section 12. The averageresponse time information 12B manages the average response time, a totalrequest frequency and total time. The average response time is a valueobtained by dividing total time by the total request frequency, and anaverage value of the time required from the transmission of the requestfor obtaining the contents list from the controller 100 to the AVreceiver 200 through the complete obtainment of the contents list. Thetotal request frequency is a total frequency at which the controller 100transmits the request for obtaining the contents list to the AV receiver200. The total time is a total of time from the transmission of therequest for obtaining the contents list from the controller 100 to theAV receiver 200 through the complete obtainment of the contents list.For example, when the timer counter variable obtained at step S302 is2.8 seconds, the average response time is calculated at step S303according to (total time+2.8)/(1200+1) and updated. The control section11 uses the average response time in a process, described later.

The control section 11 updates the average response time, the totalrequest frequency and the total time of the average response timeinformation 12B (S304), and changes the obtainment flags of the obtainedcontents into TRUE (S305), and ends the process. With back to theprocess in FIG. 7, the control section 11 sets the scroll liston-obtaining flag to FALSE (S208), and displays the contents list on thedisplay section 13 (S209) so as to end the process.

As a result of the above process, when the scroll instruction is inputin the controller by the user's operation, since the control section 11obtains the contents list of the scroll destination, the contents listof the scroll destination can be displayed. Further, the time requiredfor the transmission of the request for obtaining the contents list fromthe controller 100 to the AV receiver 200 through the completeobtainment of the contents list is updated.

FIG. 10 is a flowchart where the control section 11 of the controller100 obtains the normal contents list. This flowchart illustrates theprocess at S105 in FIG. 6. In this embodiment, when the scroll liston-obtaining flag indicates TRUE, the control section 11 does notrequest the normal contents list, and after the average response timepasses, it transmits the request for obtaining the normal contents listto the AV receiver 200.

The control section 11 of the controller 100 determines whether thecontents whose obtainment flags indicate FALSE are present in thecontents list 12A (S401). When the control section 11 determines thatthe contents whose obtainment flags indicate FALSE are not present (NOat S401), it ends the process.

When the control section 11 determines that the contents whoseobtainment flags indicate FALSE are present (YES at S401), the controlsection 11 specifies the content with the smallest serial number in thecontents whose obtainment flags indicate FALSE in the contents list 12A(S402). The control section 11 stores the specified serial number in avariable tgtNo. For example, in the case of the contents list 12A inFIG. 3, tgtNo is 201.

The control section 11 stores tgtNo in a queue memory 12C of the storagesection 12 (S403). When tgtNo is registered in the queue memory 12C, thecontrol section 11 determines that the normal contents list of thecontents specified by tgtNo and the subsequent contents is required tobe obtained.

The control section 11 determines whether the scroll list on-obtainingflag indicates TRUE (S404). That is to say, the control section 11determines whether the scroll list is being obtained. When the scrolllist on-obtaining flag indicates TRUE (YES at S404), the control section11 initializes the timer counter variable to 0 (S405), and the timerstarts to count (S406). The timer periodically increments the timercounter variable.

The control section 11 determines whether the timer counter variable islarger than the average response time described in the average responsetime information 12B (S407). When the control section 11 determines thatthe timer counter variable is not more than the average response time(NO at S407), the control section 11 waits until the timer countervariable becomes larger than the average response time. When the controlsection 11 determines that the timer counter variable is larger than theaverage response time (YES at S407), the process for obtaining thenormal contents list at S408 and the subsequent lists is executed.

When the control section 11 determines that the scroll list on-obtainingflag indicates FALSE (NO at S404), it determines whether tgtNo isregistered in the queue memory 12C (S408). As shown at S208 in FIG. 7,the scroll list on-obtaining flag is changed into FALSE when theobtainment of the scroll list is completed. For this reason, the controlsection 11 completes the scroll list obtaining process, and thenrestarts the obtainment of the normal contents list.

When the control section 11 determines that tgtNo is registered in thequeue memory 12C (YES at S408), it initializes the timer countervariable to 0 (S409), and the timer starts to count (S410). The controlsection 11 requests the AV receiver 200 to transmit contents informationabout contents specified by tgtNo and the subsequent contents (S411).When the control section 11 determines that tgtNo is not registered (NOat S408), it ends the process. When the control section 11 requests theAV receiver 200 to transmit contents information in the scroll list orthe normal contents list, it specifies the number of contentsinformation to be transmitted by the AV receiver 200. A number ofcontents to be specified is, for example, 30, and in this case, the AVreceiver 200 transmits contents information about contents from tgtNo to(tgtNo+30).

In this embodiment, when the control section 11 is obtaining the scrolllist, it does not obtain the normal contents list but waits for theaverage response time. That is to say, the controller does not transmitthe request for obtaining the normal contents list to the server untilthe average response time passes. As a result, since the server mayexecute only the process for transmitting the scroll list to thecontroller 100, a load on the server is small, and time until the scrolllist is transmitted to the controller becomes short.

FIG. 11 is a flowchart according to a second embodiment. In the secondembodiment, the control section 11 does not transmit the request forobtaining the normal contents list to the AV receiver 200 while thescroll list on-obtaining flag indicates TRUE. The steps that are thesame as those in FIG. 10 are denoted by the same reference numerals, andthe description thereof is omitted.

The control section 11 of the controller 100 stores the smallest serialnumber in the contents whose obtainment flags indicate FALSE in tgtNo(S402), and initializes variable offsetTime to 0 (S501). The variableoffsetTime is a variable indicating an interval of a check whether thecontrol section 11 is obtaining the scroll list.

When the control section 11 determines that the scroll list obtainingflag indicates TRUE (YES at S404), it determines whether the offsetTimeis larger than 0 (S502). Since the offsetTime is 0 at the first time,the determination is made that the offsetTime is 0 or less (NO at S502),and the timer counter variable is initialized (S405), and the timerstarts to count (S406). When the control section 11 determines that thetimer counter variable is larger than the average response time (YES atS407), 5 ms is added to the offsetTime (S504). The value to be addeddoes not have to be always 5 ms.

The control section 11 again determines whether the scroll listobtaining flag indicates TRUE (S404), and when TRUE (YES at S404), itdetermines whether the offsetTime is larger than 0 (S502). Since 5 msecis added to the offsetTime by step S504, the control section 11determines that the offsetTime is larger than 0 (YES at S502). Thecontrol section 11 waits for the offsetTime and executes the step atS504 and the subsequent steps. Since the offsetTime is increased by stepS504 every time when the steps S404 to S503 are repeated, the controlsection 11 can lengthen the interval at which the check process at S404is executed. The control section 11 may execute the process for addingthe offsetTime only at first time, and may execute the determiningprocess at S404 every constant time (for example, every 5 msec). Whenthe control section 11 determines that the scroll list obtaining flag isset to FALSE (NO at S404), it executes the process for obtaining thenormal contents list according to step S408 and the subsequent steps.

In the second embodiment, the control section 11 does not obtain thenormal contents list until the obtainment of the scroll list iscompleted. Since the normal contents list obtaining process is nottransmitted to the AV receiver 200 during the obtainment of the scrolllist, the scroll list obtaining process is given priority.

FIG. 12 is a flowchart according to a third embodiment. In the thirdembodiment, when the control section 11 cannot obtain the normalcontents information from the AV receiver 200 within the averageresponse time, it checks whether the scroll list obtaining flag ischanged into TRUE. When the scroll list obtaining flag is changed intoTRUE, the control section 11 suspends the obtainment of the normalcontents list, and requests the obtainment of a scroll list. The stepsthat are the same as those in FIG. 10 are denoted by the same referencenumerals, and the description thereof is omitted.

The control section 11 transmits the request for obtaining contentsinformation about a content specified by tgtNo and the subsequentcontents to the AV receiver 200 (S411). The control section 11determines whether the reception of the contents information iscompleted (S701), and when it determines that the reception of thecontents information is completed (YES at S601), it updates tgtNo(S703).

When the control section 11 determines that the obtainment of thecontents information is not completed (NO at S601), it determineswhether the average response time passes after the timer startedcounting at step S410 (S602). When the control section 11 determinesthat the average response time does not pass (NO at S602), it againdetermines whether the obtainment of the contents information iscompleted at S601. When the control section 11 determines that theaverage response time passes (YES at S602), it determines whether thescroll list obtaining flag is changed into TRUE (S604). When the controlsection 11 determines that the scroll list obtaining flag is changedinto TRUE (YES at S604), it registers tgtNo in the queue memory 12C(S605), and requests the obtainment of a scroll list at the steps afterS405. When the control section 11 determines that the scroll listobtaining flag is not changed into TRUE (NO at S604), the obtainment ofthe normal contents list continues (S411).

In the third embodiment, when the control section 11 cannot complete theobtainment of the normal contents list within the average response time,it suspends the obtainment of the normal contents list, and obtains thescroll list. As a result, even during the obtainment of the normalcontents list, the control section 11 transmits the request forobtaining the scroll list to the AV receiver 200. For this reason, theobtainment of the scroll list can be prevented from being delayed.

FIG. 13 and FIG. 15 are flowcharts in a fourth embodiment. FIG. 13 isthe flowchart of the obtainment of a scroll list in the fourthembodiment. The steps that are the same as those in FIG. 7 are denotedby the same reference numerals, and the description thereof is omitted.The control section 11 obtains an average scroll operating interval asan interval at which the scroll instruction is input by the user'soperation. When the average scroll operating interval is the averageresponse time or less, the control section 11 sets the number ofcontents requested from the AV receiver 200 to a small value, andcompletes the normal contents list obtaining process within time shorterthan the average scroll operating interval so as to go to the scrolllist obtaining process.

When the control section 11 determines that the scroll operation isinput by the user's operation (YES at S201), it determines whether ascroll count timer already starts (S701). The scroll counter timer is atimer that increments the scroll counter variable at a constantinterval. The scroll counter variable is a variable indicating theinterval at which the scroll instruction is input by the user'soperation. The scroll count timer starts when the controller 100 ispowered on and the scroll instruction is first input.

When the control section 11 determines that the scroll count timer doesnot start (NO at S701), the scroll count timer starts (S703), and thescroll counter variable is incremented at every one second. When thecontrol section determines that the scroll count timer already starts(YES at S701), it updates the scroll operation interval value table 12Dusing a current value of the scroll counter variable.

FIG. 14 illustrates the scroll operation interval value table 12D. Thescroll operation interval value table 12D manages the average scrolloperating interval, total operating frequency and total time. Theaverage scroll operating interval represents an average of intervals atwhich the scroll instruction is input by the user's operation. The totaloperating frequency represents total frequency at which the scrollinstruction is input by the user's operation. The total time representselapsed time from the powering-on of the controller 100 and the firstinput of the scroll instruction. The scroll counter value is initializedto 0 every time when the power is off.

When the scroll operation is input, the control section 11 updates theaverage scroll operating frequency according to total time/(the totaloperating frequency+1) (S702).

The control section 11 can obtain the average value of the intervals atwhich the scroll instruction is input by the user's operation accordingto the process in the flowchart of FIG. 13. The control section 11 mayreset the total operating frequency and the total time to 0 at everyseveral minutes or several seconds, and may maintain the nearest averagescroll operating interval.

FIG. 15 illustrates the normal contents list obtaining process in thefourth embodiment. The steps that are the same as those in FIG. 10 aredenoted by the same reference numerals, and the description thereof isomitted.

When the control section 11 determines that tgtNo is registered in thequeue memory 12C (YES at S408), it initializes the timer countervariable (S409), and starts the counting of the timer (S410).

The control section 11 determines whether the average scroll operatinginterval is larger than the average response time (S801). When thedetermination is made that the average scroll operating interval islarger than the average response time (YES at S801), the determinationis made that the scroll operation is not input during the obtainment ofthe normal contents list. For this reason, the control section 11requests the obtainment of contents information from tgtNo to tgtNo+30(S802).

When the control section 11 determines that the average scroll operatinginterval is the average response time or less (NO at S801), thedetermination is made that the scroll operation is input during theobtainment of the normal contents list. For this reason, the normalcontents list obtaining process should be ended by the AV receiver 200for short time. Therefore, the control section 11 transmits the requestfor obtaining the contents information of tgtNo to (tgtNo+5) to the AVreceiver 200 (S803). The value does not have to be always up to tgtNo+5,and any value such that contents information can be obtained from the AVreceiver 200 within any short time may be used. Further, the controlsection 11 obtains the number of contents in the normal contents listthat can be completely obtained for shorter time than the average scrolloperating interval in advance, and gives the obtaining request to the AVreceiver 200.

The control section 11 executes the data receiving process shown in FIG.8 (S804), and updates tgtNo to a value indicated by tgtNo+5 (S805). Thecontrol section determines whether the scroll list obtaining flag ischanged into TRUE (S806). When the flag is changed into TRUE (YES atS806), updated tgtNo is registered in the queue memory 12C (S807), andthe scroll list is obtained by the steps after S405. When the controlsection 11 determines that the scroll list obtaining flag is not changedinto TRUE (NO at S806), it continues obtaining the normal contents list(S801).

In the fourth embodiment, when the average scroll operating interval isthe average response time or less, the control section 11 sets thenumber of contents requested from the AV receiver 200 to a small number,and completes the normal contents list obtaining process within shortertime than the average scroll operating interval, and goes to the scrolllist obtaining process. As a result, the obtainment of the scroll listcan be prevented from being delayed.

FIG. 16 is a flowchart illustrating the process for obtaining a normalcontents list according to a fifth embodiment. The steps that are thesame as those in FIG. 10 or 15 are denoted by the same referencenumerals, and the description thereof is omitted.

When the control section 11 determines that the timer counter variablevalue is larger than the average response time (YES at S407), itdetermines whether the average scroll operating interval in FIG. 14 islarger than the average response time (S801). When the control section11 determines that the average scroll operating interval is larger thanthe average response time (YES at S801), it determines whether thescroll list obtaining flag is changed into TRUE (S404), and executes thesteps after S405 or S408. When the determination is made that theaverage scroll operating interval is larger than the average responsetime, the control section 11 can obtain the normal contents list fromthe AV receiver 200 according to the steps after S408 until the scrollinstruction is input by the user's operation. For this reason, thecontrol section 11 obtains the normal contents list.

When the control section 11 determines that the average scroll operatinginterval is the average response time or less (NO at S801), it stands byfor (the average scroll operating interval+α) seconds (S901), anddetermines whether the scroll list obtaining flag is set to TRUE (S404).α is any time such as 3 seconds. α may be 0. That is to say, when theaverage scroll operating interval is the average response time or less,the scroll operation is likely to be input during the obtainment of thenormal contents list. For this reason, the normal contents listobtaining process is not executed, and the control section 11 waits forthe input of the scroll operation.

In the fifth embodiment, in a case where the scroll operation isexpected to be instructed during the obtainment of the normal contentslist even when tgtNo is registered in the queue memory, the controlsection 11 does not execute the normal contents list obtaining process,and waits for the input of the scroll instruction. For this reason, thetime until the scroll list is displayed can be shortened.

The preferred embodiments of the present invention are described above,but the present invention is not limited to these embodiments. Thecontroller 100 may request the server 300 to transmit the contents list.

The present invention can be suitably employed on devices such ascontrollers.

What is claimed is:
 1. A controller comprising: a communicationsinterface for communicating with a transmitting apparatus fortransmitting a contents list; and a control processor configured toexecute a controller program stored on a non-transitory computerreadable medium to perform the steps of: determining whether obtainmentof contents information in the contents list is finished; transmitting anormal contents list obtaining request that is a request for obtaining apredetermined number of the contents information of the contents whosecontents information in the contents list is determined that theobtainment is not finished to the contents list transmitting apparatusso as to obtain the contents information; storing an average responsetime as an average value of time from transmission of the normalcontents list obtaining request to the contents list transmittingapparatus through completion of reception of the contents information;receiving a scroll instruction of the contents list is input by a user'soperation into a scroll operation input section, when the scrollinstruction is input, determining whether the obtainment of the contentsinformation in the contents list of scroll destination is completed anddetermining that the information is not completely obtained, setting thecontents information about the scroll destination into an on-obtainingstate; and determining whether the scroll list is being obtained,wherein when the determination is made that the scroll list is beingobtained, the normal contents list obtaining request is not transmitted,and the request for obtaining the contents information about the scrolldestination is transmitted to the contents list transmitting apparatus,and after the request for obtaining the contents information about thescroll destination is transmitted to the contents list transmittingapparatus, the normal contents list obtaining request is transmittedafter the average response time passes.
 2. The controller according toclaim 1, wherein the control processor further is configured to: afterthe contents information about the scroll destination is obtained setthe scroll list into a non-obtaining state, and after the scroll list isset into the non-obtaining state transmit the normal contents listobtaining request to the contents list transmitting apparatus.
 3. Thecontroller according to claim 1, wherein the control processor furtheris configured to: when the average response time passes after the normalcontents list obtaining request is transmitted to the contents listtransmitting apparatus, determine whether the scroll list is beingobtained, and when the determination is made that the scroll list isbeing obtained, a process for obtaining the contents information in thenormal contents list from the contents list transmitting apparatus issuspended, and the request for obtaining the contents information aboutthe scroll destination is transmitted to the contents list transmittingapparatus.
 4. The controller according to claim 1, wherein the controlprocessor further is configured to perform the steps of: obtaining ascroll instructing interval that is an average value of time from theinput of the scroll instruction by means of the user's operation throughnext input of the scroll instruction, wherein when the determination ismade that the scroll instructing interval is the average response timeor less, the request for obtaining the contents information in thenormal contents list whose number is smaller than the predeterminednumber is transmitted to the contents list transmitting apparatus in thenormal contents list obtaining request.
 5. The controller according toclaim 1, wherein the control processor further is configured to performthe steps of: obtaining a scroll instructing interval that is an averagevalue of time from the input of the scroll instruction by means of theuser's operation through next input of the scroll instruction, whereinwhen the determination is made that the scroll instructing interval isthe average response time or less, the normal contents list obtainingrequest is not transmitted to the contents list transmitting apparatus,and the control processor waits for input of the scroll instructionuntil time of the scroll instructing interval or more passes.
 6. Anon-transitory computer medium storing a controller program executed bya control processor to perform the steps of: communicating with atransmitting apparatus for transmitting a contents list determiningwhether obtainment of contents information in the contents list isfinished; transmitting a normal contents list obtaining request that isa request for obtaining a predetermined number of the contentsinformation of the contents whose contents information in the contentslist is determined that the obtainment is not finished to the contentslist transmitting apparatus so as to obtain the contents information;storing an average response time as an average value of time fromtransmission of the normal contents list obtaining request to thecontents list transmitting apparatus through completion of reception ofthe contents information; receiving a scroll instruction of the contentslist is input by a user's operation into a scroll operation inputsection, determining whether the obtainment of the contents informationin the contents list of scroll destination is completed and determiningthat the information is not completely obtained, setting the contentsinformation about the scroll destination into an on-obtaining state; anddetermining whether the scroll list is being obtained, wherein when thedetermination is made that the scroll list is being obtained, the normalcontents list obtaining request is not transmitted, and the request forobtaining the contents information about the scroll destination istransmitted to the contents list transmitting apparatus, and after therequest for obtaining the contents information about the scrolldestination is transmitted to the contents list transmitting apparatus,the normal contents list obtaining request is transmitted after theaverage response time passes.